/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package view;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import model.Enseignant;

/**
 *
 * @author Paul
 */
public class GestionCours extends HttpServlet {

    @Override
    public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        /*
         * DAO
         */
        //Récupérer les cours de l'enseignant
        //Récupérer les examens d'un enseignant
        //Vérification
        //Redirection vers la JSP
        HttpSession session = request.getSession(true);
        session.setAttribute("listeCours", request);
        session.setAttribute("listeExamen", request);
        request.getRequestDispatcher("view/gestionCours.jsp").forward(request, response);
    }

    @Override
    public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        Enseignant ens = (Enseignant) request.getSession().getAttribute("enseignant");
        String creationCours = request.getParameter("creationCours");
        String creationExamen = request.getParameter("creationExamen");
        String supprimerCours = request.getParameter("supprimerCours");
        String supprimerExamen = request.getParameter("supprimerExamen");
        if (ens != null) {
            if (isSelectSubmit(creationCours, creationExamen, supprimerCours, supprimerExamen)) {
                if (isCreationCours(creationCours)) {
                    this.getServletContext().getRequestDispatcher("/CreationCours").forward(request, response);
                } else if (isCreationExamen(creationExamen)) {
                    this.getServletContext().getRequestDispatcher("/CreationExamen").forward(request, response);
                } else if (isSupprimerCours(supprimerCours)) {
                    this.getServletContext().getRequestDispatcher("/SupprimerCours").forward(request, response);
                } else if (isSupprimerExamen(supprimerExamen)) {
                    this.getServletContext().getRequestDispatcher("/SupprimerExamen").forward(request, response);
                }
            } else {
                this.getServletContext().getRequestDispatcher("/WEB-INF/view/administration/gestionCours.jsp").forward(request, response);
            }
        } else {
            request.getRequestDispatcher("view/connexion/connexion.jsp").forward(request, response);
        }
    }

    private boolean isSelectSubmit(String creationCours, String creationExamen, String supprimerCours, String supprimerExamen) {
        return (isCreationCours(creationCours) || isCreationExamen(creationExamen)
                || isSupprimerCours(supprimerCours) || isSupprimerExamen(supprimerExamen));
    }

    private boolean isCreationCours(String creationCours) {
        return creationCours != null ? true : false;
    }

    private boolean isCreationExamen(String creationExamen) {
        return creationExamen != null ? true : false;
    }

    private boolean isSupprimerCours(String supprimerCours) {
        return supprimerCours != null ? true : false;
    }

    private boolean isSupprimerExamen(String supprimerExamen) {
        return supprimerExamen != null ? true : false;
    }
}
